Error detection and correction



Feb. 1'7, 1970 J. R. B'REY- ERR OR DETECTION AND I CORRECTION 6 Sheets-Sheet 2 Filed Dec. '25, 1966 Feb. 17, 1970 J. R. BREY.

ERROR DETECTION AND CORRECTION 6 Sheets-Sheet 5 Filed Dec. 25, 1966 JOmFZOQ N2 NE QJOIWmEIk ab. 1?, 1%? J, BREY ERROR DETECTION AND CORRECTION 6 Sheets-Sheet 4 Filed Dec. 23, 1966 MN MVA NM. 1 .K T W W r, -mm 4 ......H 0 1| b y T Eek. 2?, mm J. R. BREY 3, 9

A ERROR DETECTION AND CORRECTION Fild Dec. 25, 1966 s Sheets-Sheet 5 BAD SW NO ZERO 2 NEGATIVE NUMBER CHANGE SXI AND SWI SO THAT E TRANSFER IS NO TO CGP.

2X NBP Feb. 1?, 1%? J. R. BREY 3,496,523

ERROR DETECTION AND CORRECTION Filed Dec. 23, 1966 6 Sheets-Sheet 6 CGP sTz

Y fi MovE NUMBER OF @000 POINTS EQUAL TO A A TWICE THE NUMBER NTF OF ERRoRs To FILTER BUFFER. MOVE POINTS IMMEDIATELY PRECEDING THE ERRoR. B

I APPLY HIGH CUT SMOOTHING SETS; III II E SAIIETY FILTER TO ERRONEOUS FOLLOWING THE ERROR.

DATA. 4

SELECT APPROPRIATE FILTERS BASED ON NUMBER OF ERRORS.

APPLY FILTERS TO GOOD DATA POINTS AND REPLACE EACH ERROR WITH A FILTER OUTPUT RESPONSE.

YES

3,496,528 ERROR DETECTION AND CORRECTION James Robert Brey, Irving, Tex., assignor to Texas Instruments Incorporated, Dallas, Tex., a corporation of Delaware Filed Dec. 23, 1966, Ser. No. 604,474 Int. Cl. G01v 1/00 US. Cl. 340-155 8 Claims ABSTRACT OF THE DISCLOSURE Error detection filtering is applied progressively to a time series to identify erroneous data points and error correction filters are applied to points leading and trailing each erroneous data point to generate a corrected signal and such corrected signal then is applied to the time series to replace the erroneous data point. The correction filter is selected from a set of correction filters in dependence upon the number of erroneous data points in a data gate of selected length.

FIELD OF THE INVENTION This invention relates to identification and correction of one or more erroneous amplitudes occurring at points in a seismic trace and more particularly, to the generation of a corrected amplitude after identification of an error where the correction is dependent upon a weighted average of the amplitude at a plurality of points preceding and following the point of erroneous amplitude.

DESCRIPTION OF THE PRIOR ART In seismic exploration, numerous types of instrument errors appear in recorded field data. Such errors may be due to malfunctions of a seismic detector during the operation in which seismic reflections are detected. Further, errors may be introduced in any one of many operations in the data handling process down to and including placing the data in the desired form for ultimate presentation. Useable forms of seismic data include multitrace seismograms, of which there are several varieties, as well as time series stored in phonographically reproducible form and thereby selectively recoverable for subsequent use.

In utilizing seismic traces in a digital form, the output signal from a seismic detector is applied to an analog to digital converter following which it is multiplexed with a plurailty of like signals, similarly converted to digital form, and stored as a multipleXed time series on a reproducible medium such as a magnetic tape. Such an operation is described in Patent No. 3,134,957 of Foote, et al. Such a tape is then employed along with other tapes obtained in the same geological province in order to provide information which will lead to the most accurate possible interpretation of the subsurface structure which gives character to the seismic data. Handling of the seismograms may involve any one or several of many different operations depending upon the nature of the data, the physical constants of the earth in the area in which the seismic record is taken and the ultimate use requested of the data. Representative of the type of operations that are routinely performed on the seismograms are corrections for variations in elevation as between two adjacent detecting stations in a given seismic spread. This requires shifting one seismic trace as a whole relative to the others on a given seismogram so that all traces will bear a same time relation to a given reference horizon. Another well known operation involves correcting each trace of a multitrace seismogram for normal moveout. Such corrections may be considered to change the relative time occurrence of events in a given seismic trace to cause them to appear 3,496,528 Patented Feb. 17, 1970 in a time relationship in which they would otherwise appear had the seismic energy travelled along substantially vertical travel paths. Seismic energy detected by geophones located in a given geophone array generally travels along different slanting travel paths because the geophones are located in the earths surface at points spaced from one another and from the source of the seismic waves. Other operations may require the reproduction, demultiplexing and then ultilization of digital data words stored on the magnetic tape. A given portion of a seismic trace may be clipped in amplitude, may be of zero amplitude or may have an erroneous amplitude by reason of A-D converter failure. The presence of mechanically induced instrument errors on a seismic trace may appear as dead segments, spikes, and transients. Any operation which follows introduction of such errors will produce erroneous results, the seriousness of which depends upon the nature and degree of the error.

SUMMARY OF THE INVENTION The present invention is directed to the identification and correction of errors which are normally encountered in treatment of seismic traces. While the invention is primarily concerned with operations involving digitized seismic data, it will be understood that in principle it may be employed in an analog sense as will hereinafter be shown.

In accordance with the invention, means are provided for correcting erroneous seismic traces which includes an error detection filter applied progressively to the trace to identify the location and extent of an erroneous portion of such trace. After identifying the presence of an error, the erroneous section is then replaced with a weighted average of a plurality of points on the seismic trace which both precede and follow the erroneous section.

In a more specific aspect, in a digital operation a relative short error detection filter is progressively applied to the trace as a whole to identify the locations and number of corrections or closely related erroneous digital words in the trace. The erroneous word (or words) is then replaced with a weighted average of a plurality of data words preceding and following the erroneous word. The number of words employed in correction of a given data word, preceding and following the erroneous word, is dependent upon the number of erroneous words consecutively appearing or closely related in the seismic trace.

For a more complete understanding of the invention and r for further objects and advantages thereof, reference may now be had to the following description taken in conjunction with the accompanying drawings in which:

FIGURE 1 is a schematic diagram of an error detection and correction system employing analog components;

FIGURE 2 is a plot of the response of the filter of FIGURE 1;

FIGURE 3 illustrates a set of filters for correcting six consecutive erroneous data points;

FIGURE 4 illustrates an embodiment of the invention wherein digital data is employed;

FIGURE 5 illustrates a portion of a seismogram employed in the invention and results accruing from use of the invention;

FIGURES 6-9 are flow charts illustrating, in connection with the comments keyed to Tables V-VIII, how and when an error should be corrected; and

FIGURE 10 is a flow chart illustrating time interpolation filtering employed in one mode of the present invention.

THE PREFERRED EMBODIMENTS In order to illustrate the method aspect of present invention, FIGURE 1 has been provided to include a capacitive storage unit which stores time spaced samples of a time series upon which operations will be performed. The capacitor bank 12 stores voltages at addresses a, b, c, -n at consecutive locations in any array of capacitors.

Such voltages may represent samples of an analog seismic trace with sampling intervals such as 0.002 second or 0.004 second or other selected interval. The seismic trace thus stored may be reproduced by movement of a pickup contact as in the relative directions of arrows 16 in the manner well known in the art, as for example in the McClure et al. Patent No. 2,684,468.

In accordance with the present invention a relatively short error detection filter 11 is employed. Filter 11 is a filter of seven points with a low response to frequencies below 100 cycles/second and high response to frequencies above 100 cycles/second. Other "cutoff frequencies may be selected.

The response of the filter in the form that has been found to be satisfactory is indicated in FIGURE 2 wherein the product (fAt) of frequency (f) and the sampling interval (At) has been plotted as abscissa and the attenuation of the filter has been plotted as ordinates. For sampling intervals of 0.002 seconds it will be seen that the filter response plotted in FIGURE 2 becomes appreciable only above 100 cycles i.e. above the point wherein (fAt) equals 0.2. In FIGURE 1, the voltages stored on the condensers at addresses a-n appear on the successive channels as the contacts are made between the commutator brushes on pickup structure 15.

With the structure thus described, signals representative of the voltages at the addresses a-n may be produced and employed to detect and correct voltages in the series which are erroneous.

The filter whose response is illustrated in FIGURE 2 is a seven-point filter which in FIGURE I initially involves only the use of seven channels 21-27. Channels 21- 27 are connected by way of gated amplifiers 41 and weighting resistors 51-57 to a comparison unit 58 wherein for each step of the support 12 relative to pickup the voltages on channels 21-27 are summed, squared and compared with a threshold voltage which is applied to unit 58 from a condenser 59.

More particularly, as the unit 12 moves relative to pickup 15, the voltage from the time domain filter, channels 21-27 and weighting resistors 51-57, will vary from step to step. So long as there are no voltage spikes or dead spots (points when capacitors improperly having no voltage thereon) then the voltage applied to the comparison unit 58 will be less than the voltage capacitor 59. However, because of the nature of the error detection filter, if one capacitor such as at the address g has a voltage which is improperly higher or lower than the voltages on capacitors at addresses a-f then, because of the weighting resistors 51-57, an erroneous voltage signal will appear in the unit 58.

With the appearance of such an erroneous voltage signal, the capacitor at the leading end of the error detection filter is thus identified as having an erroneous voltage thereon. As above described, the location of this capacitor would be the address g.

Assume now that the relative motion between carrier 12 and pickup 15 abruptly terminates with channels 21-27 in registration with capacitors at addresses a-g. In accordance with the present invention, having identified the erroneous voltage at address g, an investigation is then made of the character of the points in the time series at addresses h-[ to see if the error thus detected is confined to the single address g or if it extends to any of the addresses in the next five address locations h-l. For this purpose, the amplifiers 41 are de-energized and amplifiers 60 are actuated. Amplifier 60 has seven inputs connected to channels 28-34 and has outputs connected in reverse order but in parallel with the output of amplifier 41. Additional amplifiers 61-64 similarly have their outputs connes ed in pa a el. A p fier 6 h i se en input channels connected to channels 29-35; amplifier 62, to channels 30-36; amplifiers 63 to channels 31-37; and amplifier 64 to channels 32-38.

When amplifiers are energized, if the voltage on the capacitor at address 28 is in error, then such an indication will be present on unit 58. With amplifiers 60 de-energized and amplifiers 61 energized, if the voltage on the capacitor at address i is erroneous, the same will be indicated on unit 58. Thereafter, when amplifiers 61 are de-energized and amplifiers 62 are energized, if the voltage on the capacitors at address j is erroneous, the same will be indicated on unit 58; when amplifiers 62 are de-energized and amplifiers 63 are energized, if the voltage on the capacitor at address k is erroneous, the same will be indicated on unit 58; and when amplifiers 63 are de-energized and amplifiers 64 are energized, if the voltage on the capacitor at address I is erroneous, the same will be indicated.

For the purpose of the present description, it will be assumed that errors greater than six in number in a consecutive relation will not be corrected but that errors less than six will be corrected. In FIGURE 1, a correction generation filter has been illustrated for the case where a single point error is located. That is the pickup unit has moved relative to the support 12 along the time series until chanels 21-27 are in registration with addresses a-g, at which time an error at address g is indicated. Thereafter, with the amplifiers 41 de-energized and amplifiers 60-64 successively energized, no error is indicated on unit 58. This means that a single point error is present and it is located at address g. When this is the case, an error correction filter which includes resistors 71-78 is employed to generate a voltage which is then stored on the capacitor at address g, More particularly, the voltages on the four capacitors immediately preceding address g, i.e., at addresses c-], are weighted by resistors 71-74. Similarly, the voltages from capacitors at the four addresses h-k immediately following address g are weighted by resistors 75-78, respectively. The summation of the eight voltages weighted by resistors 71-78 is then applied by way of an isolation amplifier 79 to a terminal on selector switch 80. The selector arm of switch 80 is connected to channel 27. From its normally open terminal, the selector arm is connected to a grounded terminal which removes the charge from the capacitor at address g. Thereafter, when the arm of switch 80 is moved to the terminal connected to the output of amplifier 79, the proper voltage generated by the error correction filter 70 is applied to channel 27 and thus to the capacitor at address g. Thereafter the relative movement between carrier 12 and pickup 15 may resume to search for additional erroneous points. The foregoing illustrates the method of locating and correcting a single erroneous voltage or data point.

In FIGURE 3, error correction filters for correcting erroneous voltages in all of six consecutive addresses is illustrated. A different filter is employed for correcting each of the voltages at addresses g-L Further, each of the error correction filters comprises 12 data points, tt-f, ahead of the 6 point error data gate g-l and 12 points, m-x, following'the error data gate g-l.

More particularly, filter 81 is employed to correct the voltage at address g; filter 82 is employed to correct the voltage at address h; filter 83 for the voltage at address i; filter 84 for the voltage at address j; filter 85 for the voltage at address k; and filter 86 for the voltage at address I.

In each case the nature of the error correcting filter will depend upon the length of the error gate. For example, in FIGURE 1 filter 70 involved 8 points, 4 preceding and 4 following a single erroneous data point at address g. In FIGURE 3, for a 6 point error gate including addresses g-l, each of the six filters involve 12 points preceding and 12 points following the error data gate. The fil-. ters for any erroneous data gate preferably will involve, points preceding the error data gate which are in number twice the number of points in the error data gate and likewise will involve points following the error gate of twice the number of points in the error gate with a lower limit on the number of points being not less than four points preceding and four points following the error data gate.

More particularly, based upon the above noted preference, if the error detected and identified by unit 58, FIG- URE 1, comprises only one address then filter 70 is selected and employed. Filter 70 applies a new voltage to replace an erroneous voltage by way of channel 27.

If the erroneous section includes two voltages then the two eight point filters will be employed to replace the two erroneous voltages.

If the error section comprises three consecutive voltages then three twelve point filters will be employed to replace three consecutive erroneous voltages,

Four 16 point filters are employed for correcting four consecutive voltages.

Five twenty point filters are employed for replacing five consecutive erroneous voltages.

Six twenty-four point filters 81-86 are employed for correcting six consecutive erroneous voltages. As above noted the length of the error gate dictates the number of points to be employed for generating the correct voltages. The criterion for determining the number of time domain filter points for generating any correct voltage is that there will be used either (1) four valid or non-erroneous points preceding and following the erroneous point to be corrected, or (2) a number equal to twice the number of points in the error gate both preceding and following the error gate whichever is greater.

It has been found that a majority of erroneous data points will be accommodated within the above criterion. More particularly, in seismic operations conducted in accordance with Foote et al. Patent No. 3,134,957 and Baker et al. Patent No. 3,074,636, more than six consecutive non-valid data points is not often encountered, If the error detecting filter provides an indication that more than six consecutive words are in error, then such an extended erroneous section will not be corrected by prediction filters as above described. Rather, a spatial interpolation filter will apply thereto, the interpolation filter being ramped on and off.

In one embodiment of the invention, the error detection filter had the following weights, the channel weight being identified with reference to the weighting of channels 21-27 as provided by resistors 51-57 of FIGURE 1.

TABLE I Filter channel: Weight 21 8.192

The following table includes the relative weights of preferred error correction filters employed in the present invention:

TABLE II (A) One point gap Gap Filter No. 1

Gap

Filter No. 1

Gap

Filter No. 1

Gap

(B) Two point gap Filter No. 2

Gap

(C) Three point gap Filter No. 2

Gap

Filter No. 3

Gap

(D) Four point gap Filter No. 2

Gap

Filter No. 4

Gap

Filter No. 1

Gap

Filter N0. 3

Gap

Gap

(B) Five point gap Filter N0. 2

Gap

Filter N0. 4

Filter N0.

Gap

8 Gap (F) Six Point Gap Filter No. 1 Filter No. 2

Gap Gap Filter No. 3 Filter No.4

Gap Gap Filter No. Filter No. 6

Gap Gap 6.1615600 3.4122300 l3.2933000 5.3274200 12.9440000 4.3267700 4.0000300 .9039360 4.7271900 l.7478200 5.4132000 1.5721200 .0233384 .2384560 4.1924300 l.3450500 3.9766200 1.0573000 1.6788500 .3198500 .2037840 .0383249 .0661472 .0428034 The foregoing description has made reference to analog type devices and operations wherem voltages representative of uniformly spaced data sample points are stored on capacitors in a manner to facilitate playback or testing of the stored data. It will be apparent that the method of the invention may be carried out on a step by step basis to correct any errors in series of sample points stored capacitively.

A preferred mode of carrying out the present invention involves the use of a high speed digital computer. Thus, the data preferably will be stored on magnetic tape 1n the manner described in U.S. Patent 3,134,957 to Foote, et a1. Each word at addresses a, b, 0, etc., will correspond w1th addresses a, b, 0, etc. in FIGURES 1 and 3 but will be in the form of a plurality of bits recorded 1n parallel on laterally spaced tracks on a magnetic tape.

The following description is based upon a t me series 11'! the form of digitized data words representing a smgle seismic trace available under computer control for trans fer into a suitable operating register system wherein each of the steps above described with respect to detection of a first error, sampling the time series beyond the first error to determine the length of the error gate, and applying suitable filters for replacing erroneous data words with corrected data words.

Preferably, the computer employed will be of the type described and claimed in Baker et a1. Patent No. 3,074,636, more generally identified as Texas Instruments Automatic Computer Model No. 827. Such computer and instructions for programming the same are described and set out in Programming Instruction Manual, Texas Instruments Automatic Computer Model 827. Texas In struments, Inc. 1964 and the same is included herein by reference.

The flow of data in such operation is illustrated 1n FIGURE 4. In this system, data words are transferred from magnetic tape or other suitable manner into a register 100 wherein the data words are moved progressively through the register 100 in the direction of arrow 101. The presence of error in the time series thus moved through register 100 is detected initially by ap plying to a threshold storage unit 102 a threshold s1gnal representative of the average power of all of the data words over a given reference gate determined, in a preferred mode of operation, in accordance with Equation 1 set out below. As indicated such average power may be 10 derived from a plurality of data words which may or may not include those of the seven channels 111-117. As shown Channels 104 supply the input reference voltage.

Channels 111-117 are multibit channels. They lead to multiplier units 121-127, the outputs of which are applied to a summation unit 128. The multipliers 121-127 have multiplication factors or weights according to the values set out in Table I for the error detection filter. The output of the unit 128 is squared in unit 128a and is then applied to a comparison unit 129 whose output in turn is connected to a control unit 130.

Transmission of data words from addresses a-g is controlled by a multi-channel gate 131. As the error detection filter looks forward, it will detect the first erroneous data Word in any error gate. Upon sensing such an error through operation of comparison unit 129, gate 131 is closed and gate 132 is open so that the error detection filter operates in a reverse direction to determine the length of the error gate. As indicated by control channels 133 and 134, gates 131 and 132 as well as four additional data gates (not shown) are actuated under the control of unit 130.

Gate 131 thus controls application of words at addresses a-g to the error detection filter. Gate 132 controls application of data words at address h-n to the error detection filter in reverse order. As above described, additional control units are provided for successive data gates (not shown) which effectively move one address at a time away from the error address g.

The control unit is coupled by linkage to a multi-position selector unit 141.

If it is found that a single error is present and is located at address g then filter 151 is employed. Filter 151 employs the four data words at addresses c-f preceding the erroneous data word g and the four data words h-k following the erroneous data word g. The circle 151a has been illustrated enlarged as to indicate that at each intersection of channels in FIGURE 4 that there will be a multiplier such as the multiplier 151b. Multiplier 151b is a multibit digital multiplying unit having as a multiplicand the factor corresponding with the first element of filter in Table I. The multiplier is the data word at address c. Thus, there is provided on the output channel 1510 from filter 1510 from filter 151 a data word which has the correct value for the time series in question at the address g.

The selector unit 141 in the position indicated will apply the correct data word to address g replacing the erroneous data word.

Eight point filters 152 and 153 are employed to apply signals by way of channels 1520 and 153c to the selector unit 141 which, when in its second position, will replace erroneous data words at addresses g and h, respectively. Similarly, a three-word error gate is corrected by using filters 154-156 in conjunction with selector 141 in its third position.

A four-word error gate is corrected by employing filters 157-160 in conjunction with selector 141 in its fourth position to replace erroneous data words at addresses g, h, i and 1', respectively. In a similar manner, filters 16 1- are employed to correct a five-data word error gate with selector 141 in its fifth position. Filters 166-171 are employed for a six-word error gate with the selector 141 in the last or sixth position.

In the latter operation, the signal on channel 1660 is applied to the sixth channel on the first section of selector 141. The signal from filter 167 is applied by way of channel 167s to the sixth channel on the second section of selector 141. The signal from filter 168 is applied by way of channel 1680 to the sixth channel of the third section of selector 141. The signal from filter 1690 is applied to the sixth channel of the fourth section of selector 141 by way of channel 169C. The signal from filter 170' is applied by way of channel 1711c to the sixth channel on the fifth section of selector 141. The signal from filter 171 is applied by way of channel 1710 to the sixth channel of the sixth section of selector 141.

In each case, the filters will have the weights specified in Table II.

The following program has been found to be satisfactory for carrying out the invention above described and is set forth in terms specified by the above identified Programming Instructions Manual for the Texas Instruments Automatic Computer Model 827.

In this program outline:

(1) Most storage initialization has been omitted;

(2) Coding peculiar to the computer being used and not otherwise necessary has been omitted; and

(3) Constant areas and storage areas have not been set up separately.

The portion of the program which follows is concerned with detecting errors and developing the power summation to be used in developing the threshold level.

TAB LE III ctal Machine Level Inst.

Symb. M odifier Index Tag Mne: momc Op. Code Symbolic Location Symb. Adr.

ORG

LLB

drum).

LWM Bring one data sample from drum address selected into MQ register.

Load index register B to point to last position of rotating 36 point data buffer used.

Decrenient index register B to point to next available position of data bufier, jump if index register nonzero.

Ii index register B is zero (end of bufier) reload index register 13 to point to first position of data buffer.

Store the contents of index register B in address of location LXI above. B will be reloaded on the next loop through.

Store data word in MQ into butler.

Load index register B with value to be used by forward filtering process to address the data butler.

Decrement index register B. If nonzero skip the next instruction.

If index register B is zero reload to 36 (points to start of data buffer).

Store the contents of index register B in address of location LBI above.

Load index register A with value to be using by filtering process to address the filter point buffer.

Apply error detection filter in forward direction to portion of data buffer. Filtering process consists of:

070474 P'II LLC LO 504045 LXI LXR 37B 464105 DXN 0213 504044 LX R 3613 514102 SX R 434542 SMQ 504016 LBI LXR 14B 464112 DXN 02B 504044 LXR 3613 514107 SXR LBI B 502010 LXR 08A FFA 430000 SMQ, TMP Filter output response to temporary storage.

660000 MPY TMP Square filter output response (power).

410000 STD TMP Store power (temporary).

020003 SAL 3 100031 25 AMQ 25 1 4 016150 swr 504007 RPI LXR 764542 CAM 010372 .TZE

711652 S UB 014372 .I PL

JMI

440612 FRI FIL AMQ 530150 SXI 620010 OKI CAD 600616 AD L 410010 SID 620000 CAD 600026 ADL 410026 STD from accumulator.

Load index register B with value to be used by reverse filtering process to address data buffer.

Decrement index register B. If non-zero skip the next instruction.

If index register 13 is zero reload to 36.

Store the contents of index register B in the address portion (low order 10 bits) of location RPI above.

Place absolute value of data word in accumulator.

BAD Absolute zero is a possible converter failure. Transfer to service errors.

CL]? Subtract 017776 for 9,000

recording system or 037776 for 10,000 recording system. These numbers are one less than the largest values the systems are capable of recording (overshoot or clipping).

BAD Jump to service errors (a clip count could be updated).

RPI B BUF B A Threshold-Power.

OKI If negative the power of the filter output result exceeds the threshold level, an error 15 indicated by the forward filter and the reverse filter will be applied. If nonnegative the point is good. When the routine is processing a group of errors this transfer will be changed to update counts of good and bad points, etc. (See 0GP).

RFL Apply error detection filter in reverse direction to portion of data bufier. Filtering process consists of:

3 Shift filter output to retain maximum significance without overflow.

Move filter output to MQ,

from accumulator. TMP Filter output response to temporary storage. TMP Square filter output response. TMP Power to temporary storage. THR Subtract threshold level set on previous gate from power. BAD If power exceeds threshold transfer to process erroneous data point.

When the routine is processmg within a group of erroneous points this transfer will be altered to update counts of good. bad points, etc. (See CGP).

N GP Double length word to A and B accumulators. Word contains a count of good points since the last error was encountered and a count of the total good points since the beginning of the current 200 millisecond threshold gate. ONE Add the contents of locations E, ONE+1 to the double length accumulator. Increment each count by one.

NGP Store updated counts.

TMP Acquire power from temporary storage and place in the A. and B accumulators.

PWR Add in the previous double length power summation for the 200 millisecond gate.

PWR Store the double length SUM in PWR. Update power summation.

OKI

The following portion is concerned with developing a TABLE V model of the data threshold level based on the power FIGURE 6: Comment spectrum for use 1n detectlng erroneous data samples. The A Sum twice the contents of NTF and 0110 mg method 18 used: the contents of NBP and a constant 5 of 2. NTF contains the number of good points separating any two er- 1 T rors or groups of errors where the i (H) 2' N number of good points is insufficient to correct the first group of errors. where: B If SW 1s zero this is the first error encountered. T=threshold level, initially set to zero, C At least four good points on each z=count of threshold gates completed; Side are needed for time interpola P=summat1on of powers of filter responses over gate tion filtering of the Smallest length; ber of errors (1). N=number of data samples involved 1n the summatlon. D A positive nonzero number in SW dicates to the routine that a group of errors is being processed which TABLE IV to this point can be time inter- 720430 BB OLA gineIsionlessgilgcgunt. polated. A negative number lndl- ADD p a e coun 1 STE Store updated count in TM cates the group cannot be time in A(time counttefi). h m t terpolated.

721714 OLA GT1 cqulre nex res 0 ga e timewimgnsionless) E Transfers 1n ma1n 1oop are altered and place in accumulator. so that routlries will make decisions 100000 AMQ gggfg Of accumulator on when sufficient good points have 710130 SUB TIM Next thr e hold gate t been processed to correct errors.

eurren H116- 014260 JPL IBR If remainder is positive the F Transfer 10 BB, yp Power 811m end of gate has not geen matlon on b d i t 1'a(fI1l18d,l;)theIWiS% adgate:i 8D 8.8 een T930 e an thrgshod level should be TABLE VI up a e 110000 MQA Next threshold gate time from FIGURE Comment gg e to ha A;' :;t ee1 1 u1ator. A If SW 1s negatlve the error gate is too 700434 ADD 200 fig2 by wide and the errors will be filtered ii'f g g g gg t0 uslng a hlgh-cut smoothlng filter.

401714 STR G'II st c nextl i rfshold 'ate B If the number gt bad points exceeds lme 1n 6 (NBP/2) t e error gate or group LA N GT Number of threshold ates 720042 C encounutlered to A 40 cannot be interpolated.

accum ator.

700616 ADD ONE Update gate count by adding C If number of q Pmnts f contenffi c r ONE 1) to the mg the first error is less than twice 30611111 8. 01. i

400042 STR NGT stoic accumulator in NGT, the of errors the error gate updatted threshold gate cannot be lnterpolated.

001111 002 GAD PWR, Power summation to A and TABLE VII NB accuuzmulatorsD d b 640011 DIV NGP 01 orma e power. ivi e y number of points contribu- FIGURE 8 Comment tutg to the summation tto A Increment NTF (Number of good ge average power 111 ga e.

660435 MPY 045 Multiply quotient (average data Samples slnce he last error pouger) bgfmgg of 45 WaS found).

020006 SAL 6 Align decimal point. B The number of tmlllllg 8 Polnts 010420 SDL THR Subtract THR (previous must at least equal the length of threshold level) from th filt 11 double length accumulator. 3 er P011115?)- 410000 STD TMP s afgniellrzmdgolrl 'lQgVIP C The number of trailing good data gw fti gl lga' samples must be twice the number revlous res 0 of erroneous samples (This count CLA ONE Contents of ONE 1 to 720616 Daccmglator includes any good points contained 64 042 DIV NGT Ni 6 ycurrent number of 0 TM Mgl t f l g l i lfi wlthln the error gate).

660001 MPY .P 01 PS y eas sign cant hal 'o dofuble leglgth le- TABLE VIII mam 6! IOIDB 0V6.

022021 SAR 17 filg g n qcciui l oint. t th FIGURE Comment 670000 MPA MP ip y an aecum a e wi the most Significant half A If the number of bad polnts (NBP ofthe renfiindein 'tr f contalns twice the number of bad previous ree us me lons accomplish double length points) i one then .four trading i ulti l cau i i h ml 1 65 good points are required for tlme THR prevlous res o eve THR ag g fgi i gzl f fi 1nterpolatlon correction.

I68 0 8V9 111 140100 1BR 1BR Increment 1001, block register FIGURE 10 1S concerned with the time lnterpolatlon (update time address on drum) and transfer to process next data sample.

filtering. This illustrates a process which weights good points on each side of an error to approximate the value 70 which should replace the erroneous point.

'FIGURE 5 In FIGURE 5, the results of applying the invention through use of the above identified computer successively to each of 24 traces of a 24 trace seismogram 200 has Tables V-VIII contain details relating to the flowcharts of FIGURES 69, respectively, which show the process of deciding how and when a given error should be corrected.

been illustrated. Seismogram'200 initially was recorded in multiplex form in accordance with the Foote et al. Patent No. 3,134,957 and thereafter demultiplexed to form relationships graphically shown in the upper half of FIG- URE 5. It will be understood that only the section of the seismogram centered at a seismic record time of 3.0 seconds has been included in FIGURE 5. The time scale for seismogram 200 as demultiplexed is shown at the margins of the upper seismogram 200. It is readily apparent that there are many points in this seismogram where the data clearly is in error such as points 201, 202 and 203, for example clearly involve erroneous data. Many other areas such as points 204, 205 and 206 similarly stand out as involving such error as to render the reliable interpretation of the seismogram almost impossible.

The lower record 210 illustrates the actual results obtained from treatment in accordance with the present invention of the record 200. There is a trace correspondence between the data except that the gapsand erroneous sections present at record 200 have been completely corrected in an intelligible manner in a record 201. Note particularly the elimination of the errors at point 203 from traces 8 and 9 of record 200. The corresponding points on traces 8 and 9 of record 210 have been indicated by the reference character 203. Similarly, the zone 204 has been corrected as well as all other clearly erroneous points in record 200. Having described the invention in connection with certain specific embodiments thereof, it is to be understood that further modifications may now suggest themselves to those skilled in the art and it is intended to cover such modifications as fall within the scope of the appended claims.

What is claimed is:

1. The method of correcting erroneous data points in a time series in the form of successive time spaced samples of a seismic trace which comprises:

(a) applying said series to automated data process means structured as a multipoint time domain error detection filter to identify the location of an erroneous data point in said series, and

(b) applying said series to automated data processing means structured to replace said erroneous data point using a data point determined from a weighted average of a plurality of data points preceding and following said erroneous data point.

2. The method of claim 1 wherein the number of points preceding the erroneous point equal the number of points following said erroneous point.

3. The method of correcting erroneous digital words in a digital seismic trace which comprises:

(a) applying said trace to automated data processing means structured as an error detection filter for location of an erroneous section of said trace and the number of consecutive erroneous words in said section, and

(b) applying said trace to automated data processing means structured to replace said erroneous words at said location with corrected words each representative of a weighted average of a predetermined number of non-erroneous data words in said trace preceding said section and following said section where the number and locations of said non-erroneous data words are dependent upon the number and location of erroneous data words in said section.

4. The method of correcting an erroneous data word in a time series of data Words stored in reproducible form which comprises:

(a) applying said series to automated data processing means structured as an error detection filter to identify the location and number of consecutive erroneous data words,

(b) generating in an automated data processing means a corrected word to replace said erroneous data word by production of a weighted average of selected nonerroneous data words preceding and following the erroneous data word, and

(c) applying said trace to automated data processing means wherein said corrected word is substituted for said erroneous data word.

5. A system for correcting erroneous data Words in a time series stored in reproducible form which comprises:

(a) automated data processing means simulating a multi-element time domain error detection filter,

(b) means for applying said simulated filter to said time series progressively along the time scale thereof to identify the location in said time series of erroneous data words,

(0) automated data processing means simulating a plurality of time domain error correction filters having center gaps of progressively increasing number of data words with the number of data points on each side of said center gap proportional in number to the length of said gap and dependent upon said length,

(d) automated data processing means for selecting one of the simulated time domain filters in dependence upon the number of consecutive erroneous data words identified at a given location by said simulated error detection filter, and

(e) means for applying said one of the simulated time domain filters to said time series to replace an erroneous data word in said gap and at said location with the output of said one of said error correction filters.

6. The method of error detection and correction in a time series which comprises:

(a) applying an error detection filter structured in an automated data processing machine progressively to consecutive sets of data points in said time series while moving in one direction along said series to locate a first erroneous data point, with said sets overlapping one another and differing one from the other by one data point,

(b) reversing said error detection filter structured in said automated data processing machine at said first erroneous data point to detect any erroneous data points immediately following said first data point, and

(c) applying the output signal of an error correction filter structured in said automated data processing machine to said first data point, which output signal is a weighted summation of a plurality of data points both preceding and following said erroneous data point.

7. The method of claim 6 wherein the number of data points employed in said error correction filter is dependent uponthe number of erroneous data points immediately following said first data point.

8. The method of claim 7 wherein there is employed in said error correction filter a number of data points following said erroneous data point and a number of data points preceding said erroneous data points equal to at least twice the number of erroneous data points adjacent one to the other but not less than four.

No references cited.

RODNEY D. BENNETT, 111., Primary Examiner D. C. KAUFMAN, Assistant Examiner US. Cl. X.R. 

